package com.itheima.dao;

import com.itheima.pojo.CheckGroup;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

@Repository
public interface CheckGroupDao {
    // 1. 新建查检查
    void add( CheckGroup checkGroup);
        //1.1  检查组  与检查项配对
            // void setIdAndCheckitemIds(@Param("checkGroupId") Integer checkGroupId, @Param("checkitemId") Integer checkitemId);
                //优化 批量插入
            void setcheckGroupIdAndCheckitemIds(@Param("checkGroupId") Integer checkGroupId, @Param("checkitemIds") List<Integer> checkitemIds);


   //2. 第二部  做一个简单的查询sql  跟分页没关系    查询出来的是checkitem信息
            List<CheckGroup> findPage(@Param("queryString") String queryString);




    //3. 编辑
           // 3.1 编辑前 查询数据 进行数据回显
                 //查询 检查组基本信息
                    CheckGroup findById(@Param("id") Integer id);

                  // 查询 检查组 已经选中的 检查项
                    List<Integer> findAllCheckGroupByIdAndCheckItemID(@Param("id") Integer id);

            //3.2 编辑数据
                        //编辑 基本信息
                        void edit(CheckGroup checkGroup);

                        //删除原来的 配对关系
                        void deleteAssociation(@Param("id") Integer id);

    //4. 删除检查组
                //4.1 先进行查询
                        Integer findDelete(@Param("id") Integer id);
                //4.2 进行删除
                        void delete2(@Param("id") Integer id);

    //5. 查询所有检查组
                List<CheckGroup> findAllCheckGroup();
}


